/**
 * 
 */
package com.module.dw.bus.flyweights;

import com.rpg.base.flyweight.IOPCData;

/**
 * @author Donald
 */
public final class DWCharacter extends IOPCData {
	/** the character's base Attack score. */
	private float	baseAttack;
	/** the character's base Defense score. */
	private float	baseDefense;
	/** the character's base Evasion score. */
	private float	baseEvasion;
	/** the character's base Health score. */
	private float	baseHealth;
	/** the character's base Intelligence score. */
	private float	baseIntelligence;
	/** the character's base Looks score. */
	private float	baseLooks;
	/** the character's base MagicalAttack score. */
	private float	baseMagicalAttack;
	/** the character's base MagicalDefense score. */
	private float	baseMagicalDefense;
	/** the character's base MaxHealth score. */
	private float	baseMaxHealth;
	/** the character's base Perception score. */
	private float	basePerception;
	/** the character's base PsychicTalent score. */
	private float	basePsychicTalent;
	/** the character's base Reflexes score. */
	private float	baseReflexes;
	/** the character's base Stealth score. */
	private float	baseStealth;
	/** the character's base Strength score. */
	private float	baseStrength;
	/** the full value of the character's Attack score. */
	private float	fullAttack;
	/** the full value of the character's Defense score. */
	private float	fullDefense;
	/** the full value of the character's Evasion score. */
	private float	fullEvasion;
	/** the full value of the character's Health score. */
	private float	fullHealth;
	/** the full value of the character's Intelligence score. */
	private float	fullIntelligence;
	/** the full value of the character's Looks score. */
	private float	fullLooks;
	/** the full value of the character's MagicalAttack score. */
	private float	fullMagicalAttack;
	/** the full value of the character's MagicalDefense score. */
	private float	fullMagicalDefense;
	/** the full value of the character's MaxHealth score. */
	private float	fullMaxHealth;
	/** the full value of the character's Perception score. */
	private float	fullPerception;
	/** the full value of the character's PsychicTalent score. */
	private float	fullPsychicTalent;
	/** the full value of the character's Reflexes score. */
	private float	fullReflexes;
	/** the full value of the character's Stealth score. */
	private float	fullStealth;
	/** the full value of the character's Strength score. */
	private float	fullStrength;
	/** the value of the modifier applied to the character's base Attack score. */
	private float	modAttack;
	/** the value of the modifier applied to the character's base Defense score. */
	private float	modDefense;
	/** the value of the modifier applied to the character's base Evasion score. */
	private float	modEvasion;
	/** the value of the modifier applied to the character's base Health score. */
	private float	modHealth;
	/**
	 * the value of the modifier applied to the character's base Intelligence
	 * score.
	 */
	private float	modIntelligence;
	/** the value of the modifier applied to the character's base Looks score. */
	private float	modLooks;
	/**
	 * the value of the modifier applied to the character's base MagicalAttack
	 * score.
	 */
	private float	modMagicalAttack;
	/**
	 * the value of the modifier applied to the character's base MagicalDefense
	 * score.
	 */
	private float	modMagicalDefense;
	/**
	 * the value of the modifier applied to the character's base MaxHealth
	 * score.
	 */
	private float	modMaxHealth;
	/**
	 * the value of the modifier applied to the character's base Perception
	 * score.
	 */
	private float	modPerception;
	/**
	 * the value of the modifier applied to the character's base PsychicTalent
	 * score.
	 */
	private float	modPsychicTalent;
	/**
	 * the value of the modifier applied to the character's base Reflexes score.
	 */
	private float	modReflexes;
	/** the value of the modifier applied to the character's base Stealth score. */
	private float	modStealth;
	/**
	 * the value of the modifier applied to the character's base Strength score.
	 */
	private float	modStrength;
	/**
	 * Adjusts the score modifier for the Attack ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModAttack(final float val) {
		modAttack += val;
	}
	/**
	 * Adjusts the score modifier for the Defense ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModDefense(final float val) {
		modDefense += val;
	}
	/**
	 * Adjusts the score modifier for the Evasion ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModEvasion(final float val) {
		modEvasion += val;
	}
	/**
	 * Adjusts the score modifier for the Health ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModHealth(final float val) {
		modHealth += val;
	}
	/**
	 * Adjusts the score modifier for the Intelligence ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModIntelligence(final float val) {
		modIntelligence += val;
	}
	/**
	 * Adjusts the score modifier for the Looks ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModLooks(final float val) {
		modLooks += val;
	}
	/**
	 * Adjusts the score modifier for the MagicalAttack ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModMagicalAttack(final float val) {
		modMagicalAttack += val;
	}
	/**
	 * Adjusts the score modifier for the MagicalDefense ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModMagicalDefense(final float val) {
		modMagicalDefense += val;
	}
	/**
	 * Adjusts the score modifier for the MaxHealth ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModMaxHealth(final float val) {
		modMaxHealth += val;
	}
	/**
	 * Adjusts the score modifier for the Perception ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModPerception(final float val) {
		modPerception += val;
	}
	/**
	 * Adjusts the score modifier for the PsychicTalent ability by a certain
	 * amount.
	 * @param val the modifier applied
	 */
	public void adjModPsychicTalent(final float val) {
		modPsychicTalent += val;
	}
	/**
	 * Adjusts the score modifier for the Reflexes ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModReflexes(final float val) {
		modReflexes += val;
	}
	/**
	 * Adjusts the score modifier for the Stealth ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModStealth(final float val) {
		modStealth += val;
	}
	/**
	 * Adjusts the score modifier for the Strength ability by a certain amount.
	 * @param val the modifier applied
	 */
	public void adjModStrength(final float val) {
		modStrength += val;
	}
	/**
	 * {@inheritDoc}
	 */
	@Override
	public void clearModAbilityScores() {
		modAttack = 0;
		modDefense = 0;
		modEvasion = 0;
		modHealth = 0;
		modIntelligence = 0;
		modLooks = 0;
		modMagicalAttack = 0;
		modMagicalDefense = 0;
		modMaxHealth = 0;
		modPerception = 0;
		modPsychicTalent = 0;
		modReflexes = 0;
		modStealth = 0;
		modStrength = 0;
	}
	/**
	 * Gets the character's base Attack score.
	 * @return <code>float</code>
	 */
	public float getBaseAttack() {
		return baseAttack;
	}
	/**
	 * Gets the character's base Defense score.
	 * @return <code>float</code>
	 */
	public float getBaseDefense() {
		return baseDefense;
	}
	/**
	 * Gets the character's base Evasion score.
	 * @return <code>float</code>
	 */
	public float getBaseEvasion() {
		return baseEvasion;
	}
	/**
	 * Gets the character's base Health score.
	 * @return <code>float</code>
	 */
	public float getBaseHealth() {
		return baseHealth;
	}
	/**
	 * Gets the character's base Intelligence score.
	 * @return <code>float</code>
	 */
	public float getBaseIntelligence() {
		return baseIntelligence;
	}
	/**
	 * Gets the character's base Looks score.
	 * @return <code>float</code>
	 */
	public float getBaseLooks() {
		return baseLooks;
	}
	/**
	 * Gets the character's base MagicalAttack score.
	 * @return <code>float</code>
	 */
	public float getBaseMagicalAttack() {
		return baseMagicalAttack;
	}
	/**
	 * Gets the character's base MagicalDefense score.
	 * @return <code>float</code>
	 */
	public float getBaseMagicalDefense() {
		return baseMagicalDefense;
	}
	/**
	 * Gets the character's base MaxHealth score.
	 * @return <code>float</code>
	 */
	public float getBaseMaxHealth() {
		return baseMaxHealth;
	}
	/**
	 * Gets the character's base Perception score.
	 * @return <code>float</code>
	 */
	public float getBasePerception() {
		return basePerception;
	}
	/**
	 * Gets the character's base PsychicTalent score.
	 * @return <code>float</code>
	 */
	public float getBasePsychicTalent() {
		return basePsychicTalent;
	}
	/**
	 * Gets the character's base Reflexes score.
	 * @return <code>float</code>
	 */
	public float getBaseReflexes() {
		return baseReflexes;
	}
	/**
	 * Gets the character's base Stealth score.
	 * @return <code>float</code>
	 */
	public float getBaseStealth() {
		return baseStealth;
	}
	/**
	 * Gets the character's base Strength score.
	 * @return <code>float</code>
	 */
	public float getBaseStrength() {
		return baseStrength;
	}
	/**
	 * Gets the full value of the character's Attack score.
	 * @return <code>float</code>
	 */
	public float getFullAttack() {
		return fullAttack;
	}
	/**
	 * Gets the full value of the character's Defense score.
	 * @return <code>float</code>
	 */
	public float getFullDefense() {
		return fullDefense;
	}
	/**
	 * Gets the full value of the character's Evasion score.
	 * @return <code>float</code>
	 */
	public float getFullEvasion() {
		return fullEvasion;
	}
	/**
	 * Gets the full value of the character's Health score.
	 * @return <code>float</code>
	 */
	public float getFullHealth() {
		return fullHealth;
	}
	/**
	 * Gets the full value of the character's Intelligence score.
	 * @return <code>float</code>
	 */
	public float getFullIntelligence() {
		return fullIntelligence;
	}
	/**
	 * Gets the full value of the character's Looks score.
	 * @return <code>float</code>
	 */
	public float getFullLooks() {
		return fullLooks;
	}
	/**
	 * Gets the full value of the character's MagicalAttack score.
	 * @return <code>float</code>
	 */
	public float getFullMagicalAttack() {
		return fullMagicalAttack;
	}
	/**
	 * Gets the full value of the character's MagicalDefense score.
	 * @return <code>float</code>
	 */
	public float getFullMagicalDefense() {
		return fullMagicalDefense;
	}
	/**
	 * Gets the full value of the character's MaxHealth score.
	 * @return <code>float</code>
	 */
	public float getFullMaxHealth() {
		return fullMaxHealth;
	}
	/**
	 * Gets the full value of the character's Perception score.
	 * @return <code>float</code>
	 */
	public float getFullPerception() {
		return fullPerception;
	}
	/**
	 * Gets the full value of the character's PsychicTalent score.
	 * @return <code>float</code>
	 */
	public float getFullPsychicTalent() {
		return fullPsychicTalent;
	}
	/**
	 * Gets the full value of the character's Reflexes score.
	 * @return <code>float</code>
	 */
	public float getFullReflexes() {
		return fullReflexes;
	}
	/**
	 * Gets the full value of the character's Stealth score.
	 * @return <code>float</code>
	 */
	public float getFullStealth() {
		return fullStealth;
	}
	/**
	 * Gets the full value of the character's Strength score.
	 * @return <code>float</code>
	 */
	public float getFullStrength() {
		return fullStrength;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Attack
	 * score.
	 * @return <code>float</code>
	 */
	public float getModAttack() {
		return modAttack;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Defense
	 * score.
	 * @return <code>float</code>
	 */
	public float getModDefense() {
		return modDefense;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Evasion
	 * score.
	 * @return <code>float</code>
	 */
	public float getModEvasion() {
		return modEvasion;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Health
	 * score.
	 * @return <code>float</code>
	 */
	public float getModHealth() {
		return modHealth;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * Intelligence score.
	 * @return <code>float</code>
	 */
	public float getModIntelligence() {
		return modIntelligence;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Looks
	 * score.
	 * @return <code>float</code>
	 */
	public float getModLooks() {
		return modLooks;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * MagicalAttack score.
	 * @return <code>float</code>
	 */
	public float getModMagicalAttack() {
		return modMagicalAttack;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * MagicalDefense score.
	 * @return <code>float</code>
	 */
	public float getModMagicalDefense() {
		return modMagicalDefense;
	}
	/**
	 * Gets the value of the modifier applied to the character's base MaxHealth
	 * score.
	 * @return <code>float</code>
	 */
	public float getModMaxHealth() {
		return modMaxHealth;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Perception
	 * score.
	 * @return <code>float</code>
	 */
	public float getModPerception() {
		return modPerception;
	}
	/**
	 * Gets the value of the modifier applied to the character's base
	 * PsychicTalent score.
	 * @return <code>float</code>
	 */
	public float getModPsychicTalent() {
		return modPsychicTalent;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Reflexes
	 * score.
	 * @return <code>float</code>
	 */
	public float getModReflexes() {
		return modReflexes;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Stealth
	 * score.
	 * @return <code>float</code>
	 */
	public float getModStealth() {
		return modStealth;
	}
	/**
	 * Gets the value of the modifier applied to the character's base Strength
	 * score.
	 * @return <code>float</code>
	 */
	public float getModStrength() {
		return modStrength;
	}
	/**
	 * Sets the character's base Attack score.
	 * @param val the new value
	 */
	public void setBaseAttack(final float val) {
		baseAttack = val;
	}
	/**
	 * Sets the character's base Defense score.
	 * @param val the new value
	 */
	public void setBaseDefense(final float val) {
		baseDefense = val;
	}
	/**
	 * Sets the character's base Evasion score.
	 * @param val the new value
	 */
	public void setBaseEvasion(final float val) {
		baseEvasion = val;
	}
	/**
	 * Sets the character's base Health score.
	 * @param val the new value
	 */
	public void setBaseHealth(final float val) {
		baseHealth = val;
	}
	/**
	 * Sets the character's base Intelligence score.
	 * @param val the new value
	 */
	public void setBaseIntelligence(final float val) {
		baseIntelligence = val;
	}
	/**
	 * Sets the character's base Looks score.
	 * @param val the new value
	 */
	public void setBaseLooks(final float val) {
		baseLooks = val;
	}
	/**
	 * Sets the character's base MagicalAttack score.
	 * @param val the new value
	 */
	public void setBaseMagicalAttack(final float val) {
		baseMagicalAttack = val;
	}
	/**
	 * Sets the character's base MagicalDefense score.
	 * @param val the new value
	 */
	public void setBaseMagicalDefense(final float val) {
		baseMagicalDefense = val;
	}
	/**
	 * Sets the character's base MaxHealth score.
	 * @param val the new value
	 */
	public void setBaseMaxHealth(final float val) {
		baseMaxHealth = val;
	}
	/**
	 * Sets the character's base Perception score.
	 * @param val the new value
	 */
	public void setBasePerception(final float val) {
		basePerception = val;
	}
	/**
	 * Sets the character's base PsychicTalent score.
	 * @param val the new value
	 */
	public void setBasePsychicTalent(final float val) {
		basePsychicTalent = val;
	}
	/**
	 * Sets the character's base Reflexes score.
	 * @param val the new value
	 */
	public void setBaseReflexes(final float val) {
		baseReflexes = val;
	}
	/**
	 * Sets the character's base Stealth score.
	 * @param val the new value
	 */
	public void setBaseStealth(final float val) {
		baseStealth = val;
	}
	/**
	 * Sets the character's base Strength score.
	 * @param val the new value
	 */
	public void setBaseStrength(final float val) {
		baseStrength = val;
	}
	/**
	 * Sets the full value of the character's Attack score.
	 * @param val the new value
	 */
	public void setFullAttack(final float val) {
		fullAttack = val;
	}
	/**
	 * Sets the full value of the character's Defense score.
	 * @param val the new value
	 */
	public void setFullDefense(final float val) {
		fullDefense = val;
	}
	/**
	 * Sets the full value of the character's Evasion score.
	 * @param val the new value
	 */
	public void setFullEvasion(final float val) {
		fullEvasion = val;
	}
	/**
	 * Sets the full value of the character's Health score.
	 * @param val the new value
	 */
	public void setFullHealth(final float val) {
		fullHealth = val;
	}
	/**
	 * Sets the full value of the character's Intelligence score.
	 * @param val the new value
	 */
	public void setFullIntelligence(final float val) {
		fullIntelligence = val;
	}
	/**
	 * Sets the full value of the character's Looks score.
	 * @param val the new value
	 */
	public void setFullLooks(final float val) {
		fullLooks = val;
	}
	/**
	 * Sets the full value of the character's MagicalAttack score.
	 * @param val the new value
	 */
	public void setFullMagicalAttack(final float val) {
		fullMagicalAttack = val;
	}
	/**
	 * Sets the full value of the character's MagicalDefense score.
	 * @param val the new value
	 */
	public void setFullMagicalDefense(final float val) {
		fullMagicalDefense = val;
	}
	/**
	 * Sets the full value of the character's MaxHealth score.
	 * @param val the new value
	 */
	public void setFullMaxHealth(final float val) {
		fullMaxHealth = val;
	}
	/**
	 * Sets the full value of the character's Perception score.
	 * @param val the new value
	 */
	public void setFullPerception(final float val) {
		fullPerception = val;
	}
	/**
	 * Sets the full value of the character's PsychicTalent score.
	 * @param val the new value
	 */
	public void setFullPsychicTalent(final float val) {
		fullPsychicTalent = val;
	}
	/**
	 * Sets the full value of the character's Reflexes score.
	 * @param val the new value
	 */
	public void setFullReflexes(final float val) {
		fullReflexes = val;
	}
	/**
	 * Sets the full value of the character's Stealth score.
	 * @param val the new value
	 */
	public void setFullStealth(final float val) {
		fullStealth = val;
	}
	/**
	 * Sets the full value of the character's Strength score.
	 * @param val the new value
	 */
	public void setFullStrength(final float val) {
		fullStrength = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Attack score.
	 * @param val the new value
	 */
	public void setModAttack(final float val) {
		modAttack = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Defense score.
	 * @param val the new value
	 */
	public void setModDefense(final float val) {
		modDefense = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Evasion score.
	 * @param val the new value
	 */
	public void setModEvasion(final float val) {
		modEvasion = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Health score.
	 * @param val the new value
	 */
	public void setModHealth(final float val) {
		modHealth = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Intelligence
	 * score.
	 * @param val the new value
	 */
	public void setModIntelligence(final float val) {
		modIntelligence = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Looks score.
	 * @param val the new value
	 */
	public void setModLooks(final float val) {
		modLooks = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base MagicalAttack
	 * score.
	 * @param val the new value
	 */
	public void setModMagicalAttack(final float val) {
		modMagicalAttack = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base MagicalDefense
	 * score.
	 * @param val the new value
	 */
	public void setModMagicalDefense(final float val) {
		modMagicalDefense = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base MaxHealth
	 * score.
	 * @param val the new value
	 */
	public void setModMaxHealth(final float val) {
		modMaxHealth = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Perception
	 * score.
	 * @param val the new value
	 */
	public void setModPerception(final float val) {
		modPerception = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base PsychicTalent
	 * score.
	 * @param val the new value
	 */
	public void setModPsychicTalent(final float val) {
		modPsychicTalent = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Reflexes
	 * score.
	 * @param val the new value
	 */
	public void setModReflexes(final float val) {
		modReflexes = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Stealth score.
	 * @param val the new value
	 */
	public void setModStealth(final float val) {
		modStealth = val;
	}
	/**
	 * Sets the value of the modifier applied to character's base Strength
	 * score.
	 * @param val the new value
	 */
	public void setModStrength(final float val) {
		modStrength = val;
	}

}
